/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package testsendmail;

import java.util.Date;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
/**
 *
 * 
 * @author Lucas Nguyen
 */
public class Main {
    
    public static void send
        (
            String smtpServer,
            String to,
            String from, 
            String psw,
            String subject,
            String body
    ) 
            throws Exception {
        

        Properties props = System.getProperties();
        props.put("mail.smtp.host", smtpServer);
        props.put("mail.smtp.port", "25");
        props.put("mail.smtp.starttls.enable", "true");
        //điền host và port 
        final String login = from;
        final String pwd = psw;
        Authenticator pa = null;
        
        if (login != null && pwd != null) {
            props.put("mail.smtp.auth", "true");
            pa = new Authenticator() {

       @Override
       public PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(login, pwd);
                }
            };
        }
//else: no authentication
        
        Session session = Session.getInstance(props, pa);
        
// — Create a new message –
        
        Message msg = new MimeMessage(session);
        
// — Set the FROM and TO fields –
        
        msg.setFrom(new InternetAddress(from));
        msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse( to, false));

// — Set the subject and body text –
        
        msg.setSubject(subject);
        
//msg.setText(body);

        msg.setContent(body, "text/html; charset=UTF-8");
        
//Để gởi nội dung dạng utf-8 các  dùng msg.setContent(body, "text/html; charset=UTF-8");
        
// — Set some other header information –
        msg.setHeader("X-Mailer", "LOTONtechEmail");
        msg.setSentDate(new Date());
        msg.saveChanges();
        
// — Send the message –
        Transport.send(msg);
        System.out.println("Mail da duoc gui ùi đóa nha..main đó "); // thông báo thành công

    }
        public static void main(String[] args) throws   Exception 
        {
            //send("smtp.gmail.com", "1051190040@stu.vttu.edu.vn", "nhthach92@gmail.com", "09173536840", "Đây là cái tiêu đề", "Còn cái nội dung đâu");
       
         send("nhom5.no-ip.org", "hoangthach@nhom5.no-ip.org", "sinhvien1@nhom5.no-ip.org", "1", "Đây là cái tiêu đề của main", "Đây là nội dung của mail main testsend mai");
       
 
        }
}

